package com.example.web03homework.Mapper;

import com.example.web03homework.pojo.Book;
import com.example.web03homework.pojo.Category;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface BookMapper {
    // 根据id查询
    Book getById(Integer id);
    // 根据条件查询
    List<Book> getByCondition(@Param("keyword") String keyword, @Param("categoryId") Integer categoryId);
    // 添加
    void insert(Book book);
    // 修改
    void update(Book book);
    // 修改状态
    void updateStatus(@Param("id") Integer id, @Param("status") Integer status);
    // 删除
    void deleteById(Integer id);
    // 批量删除
    void deleteByIds(List<Integer> ids);
    // 获取所有分类
    List<Category> getAllCategories();
    // 查询指定分类下的书籍数量
    int countBooksByCategoryId(Integer categoryId);
}
